home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Rockford Magazine
/
Rockford_Magazine_009_19xx_-_de_Side_B.d64
/
dots v2.0_rof
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2023-02-26
|
3KB
|
112 lines
1 rem:dots v2.0/rockford-freeware 1993
2 goto 70
5 poke53281,6 :poke53280,6:
7 print"[145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145]"
10 print""spc(22)"dots v2.0/alex zop"
15 print"[155] neue, verbesserte"
16 print" version/28.12.1993"
20 print"[154] joystick oder"
22 print" tastatur (j/t)";
25 geta$:ifa$<>"j"anda$<>"t"then25
26 printa$
30 jk=-1:ifa$="t"thenjk=0
39 print" c64-staerke"
40 input" (0-10)";sk:ifsk<0orsk>10then40
50 sk=(10-sk)/10:ts=200-200*sk:dt=ts+25
60 sc=1024:co=13*4096+8*256
61 goto 90
70 print"[147]":fori=1to10:print"[144] [209] [209] [209] [209] [209] [209] [209] [209] [209] [209]":next
80 ys=0:vs=0:print" dein punktestand:"ys"
81 [153]" ausbeute des c64:"vs"
82 goto 5
90 deffnbx(lc)=(peek(lc+40)<>32)+(peek(lc+1)<>32)+(peek(lc-40)<>32)+(peek(lc-1)<>32)
100 deffnvh(lc)=lc<>2*int(lc/2)
110 sl=sc+450:cl=co+450:x=10:y=11:cc=peek(sl):cr=peek(cl)
120 pokesl,160:pokecl,7:f=0
130 ifjkthen150
140 gosub930:goto160
150 gosub860:ifpc=0then150
160 x=x+j:y=y+k:ifx<1orx>19ory<1ory>19thenx=x-j:y=y-k:goto130
170 ifpc=99then200
180 pokesl,cc:pokecl,cr:sl=sl+pc:cl=cl+pc:cc=peek(sl):pokesl,160
190 cr=peek(cl):pokecl,7:goto130
200 l=(peek(sl+1)=81)+(peek(sl-1)=81)+(peek(sl+40)=81)+(peek(sl-40)=81)
210 ifl+(cc=32)=-3then230
220 i=128:gosub710:goto130
230 wh=1:ml=sl:gosub650:ifnotfnvh(sl)then280
240 ifx>1andfnbx(sl-1)=-4thenbx=sl-1:gosub720:f=-1
250 ifx<19andfnbx(sl+1)=-4thenbx=sl+1:gosub720:goto110
260 iffthen110
270 goto310
280 ify>1andfnbx(sl-40)=-4thenbx=sl-40:gosub720:f=-1
290 ify<19andfnbx(sl+40)=-4thenbx=sl+40:gosub720:goto110
300 iffthen110
310 wh=2:f=0:cn=0:ifrnd(0)<skthen390
320 fori=80to720step80:forj=2to18step2:k=sc+i+j
330 ifpeek(k)=32andfnbx(k)=-3then350
340 nextj,i:goto390
350 i=k:ifpeek(i-40)=32theni=i-40:goto540
360 ifpeek(i+40)=32theni=i+40:goto540
370 ifpeek(i-1)<>32theni=i+1:goto600
380 ifpeek(i+1)<>32theni=i-1:goto600
390 i=int(int(rnd(0)*20)*40+21*rnd(0)+sc+41):cn=cn+1:ifpeek(i)<>32then390
400 ifnot((peek(i+1)=81andpeek(i-1)=81)or(peek(i+40)=81andpeek(i-40)=81))then390
410 ifsk>.6orcn>tsthen470
420 iffnvh(i)then450
430 iffnbx(i-40)=-2orfnbx(i+40)=-2then390
440 goto540
450 iffnbx(i-1)=-2orfnbx(i+1)=-2then390
460 goto600
470 iffnvh(i)then510
480 ifsk>.6orcn>dthen540
490 iffnbx(i+40)=-2andfnbx(i-40)=-2then390
500 goto540
510 ifsk>.6orcn>dtthen600
520 iffnbx(i+1)=-2andfnbx(i-1)=-2then390
530 goto600
540 ml=i:gosub650
550 iffnbx(ml-40)=-4thenbx=ml-40:gosub720:f=-1
560 iffnbx(ml+40)=-4thenbx=ml+40:gosub720:goto310
570 iffthen310
580 goto110
590 ifnot(peek(i-40)=81andpeek(i+40)=81)then390
600 ml=i:gosub650
610 iffnbx(ml-1)=-4thenbx=ml-1:gosub720:f=-1
620 iffnbx(ml+1)=-4thenbx=ml+1:gosub720:goto310
630 iffthen310
640 goto110
650 cl=co+ml-sc
660 pokeml,67
670 iffnvh(ml)thenpokeml,93
680 i=185:ifwh=2theni=150
690 forj=1towh:pokecl,0:gosub710:pokecl,1
700 forl=1to200:next:pokecl,0:next
710 fork=1to200:next:return
720 ys=ys+1:j=3:i=200:cl=co+bx-sc:ifwh=2thenj=2:i=150:ys=ys-1:vs=vs+1
730 pokebx,160:pokecl,1
740 forl=1to3:pokecl,j:gosub710:pokecl,1:fork=1to200:next:i=i+18:pokecl,j:next
750 print" dein punktestand:"ys"
751 [153]" ausbeute des c64:"vs"
760 ifys+vs<81thenreturn
770 print"":ifys>vsthen800
780 print"[144] du hast verloren... "
790 goto850
800 print"du hast gewonnen!"
850 end
860 j=0:k=0:pc=0
870 i=peek(56321)
880 if(iand1)=0thenpc=-40:k=-1:return
885 if(iand8)=0thenj=1:pc=1:return
890 if(iand2)=0thenpc=40:k=1:return
900 if(iand4)=0thenpc=-1:j=-1:return
910 if(iand16)=0thenpc=99
920 return
930 j=0:k=0:pc=0
940 geta$:ifa$=""then940
950 ifa$="[145]"thenpc=-40:k=-1:return
960 ifa$=""thenj=1:pc=1:return
970 ifa$=""thenk=1:pc=40:return
980 ifa$="[157]"thenj=-1:pc=-1:return
990 ifasc(a$)=13thenpc=99
1000 return